// pages/searchResult/searchResult.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 是否有搜索关键词相关商品
    isnone:false,
    // 搜索结果
    SearchData:null,
    // 搜索关键词
    keyWord:null,
    // 商品推荐
    HotData:null,
    // 价格排序记录点击次数
    count:0,
    // 降序类名标识符
    descending:false,
    // 升序类名标识符
    ascending:false,
    // 下拉菜单标题高亮索引
    value1: 1,

    option1: [
      { text: '综合排序', value: 1 },
      { text: '新品优先', value: 2 },
    ],
    
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    if(options.value!==undefined){
      this.setData({
        keyWord:options.value
      })
    }
    console.log(options);
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
this.getSearchData()
this.Related()
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

    // 猜你喜欢数据
    Related(){
       //  随机数组
       let arr=[7805,18075,13588,16367,15793,15694,14789,18009,16535,15962,13873,10000297,15897,16326,17971]
       // 随机商品id
       let randomId = arr[Math.floor(Math.random()*arr.length)]
      // console.log(randomId);
      wx.request({
        method:"GET",
        url: 'https://apis.netstart.cn/xmsc/miproduct/recom_btm',
        data:{
          commodity_id:randomId
        },
        success:res =>{
          // console.log("猜你喜欢",res);
          if(res.data.code==0){
            this.setData({
              HotData:res.data.data.related_recommend.data
            })
          }
          
        },
        fail:err =>{
          console.log("猜你喜欢",err);
        }
      })
    },

  // 通过关键词搜索数据
  getSearchData(){
    wx.showLoading({
      title: '数据加载中',
    })
    wx.request({
      method:"GET",
      url: 'https://apis.netstart.cn/xmsc/hisearch/query_v3',
      data:{
        query:this.data.keyWord
      },
      success:res=>{
        wx.hideLoading()

        console.log("获取搜索结果",res);
        // console.log(res.data.code);
        // if(res.data..code)
        if(res.data.data!==undefined&&res.data.data.list_v2.length>0){
          this.setData({
            SearchData:res.data.data,
            isnone:false
          })
        }else{
          // 没有该商品相关数据标识符
          this.setData({
            isnone:true
          })
          console.log(222);
          return
        }
      },
      fail:err=>{
        console.log("获取搜索结果",err);
        wx.hideLoading()
      }
      
    })
  },
    // 点击搜索历史词条进入搜索结果
    clickHistoryEntry(e){
      // 获取点击的词条
      let name = e.currentTarget.dataset.name
      this.setData({
       keyWord:name
      })
      // 获取搜索结果
      this.getSearchData()
      
    },

  // 进入商品详情
   // 根据商品ID获取商品详情数据
   getProductdetail(e){
    // 获取点击的商品ID
    let productid = e.currentTarget.dataset.id
    wx.showLoading({
      title: '数据加载中',
    })
    wx.request({
      method:'GET',
      url:"https://apis.netstart.cn/xmsc/miproduct/view",
      data:{
        commodity_id:productid
      },
      success:res =>{
        console.log("recommendProductdetail res=>",res);
        // 转string
        let productDetail = JSON.stringify(res.data.data)
        // 成功后跳转详情页
        wx.navigateTo({
          url: '../../pages/productDetail/productDetail?productDetail='+encodeURIComponent(productDetail),
        })
        this.setData({
          Productdetail:res.data.data
        })
        wx.hideLoading()
      },
      fail:err=>{
        console.log("recommendProductdetail err=>",err);
        wx.hideLoading()
      }
    })
  },

  // 按价格排序(升序,降序)
  clickPrice(){
    this.data.count++
    // 更新
    this.setData({
      count:this.data.count
    })
    // console.log(this.data.count);
    // 单数降序
    if(this.data.count%2==1){
      console.log(this.data.SearchData);
      this.data.SearchData.list_v2.sort(function(a,b){
        return b.body.price - a.body.price
      })
      this.setData({
        descending:true,
        ascending:false,
        SearchData:this.data.SearchData
      })
      // 对数据数组进行降序排序

      // 双数升序
    }else if(this.data.count%2==0){
      this.data.SearchData.list_v2.sort(function(a,b){
        return a.body.price - b.body.price
      })
      this.setData({
        descending:false,
        ascending:true,
        SearchData:this.data.SearchData
      })
    }
  }
})